package com.cysoft.third.echarts.component.geo;

import lombok.Data;

/**
 * @author 玖零
 * @version v0.0.1
 * @project cysoft-third-echarts
 * @package com.cysoft.third.echarts.component.geo
 * @date 2025/3/13 11:17
 * @desc
 */
@Data
public class GeoLabel {

    /**
     * 是否显示标签
     * 默认值: false
     */
    private Boolean show = false;

    /**
     * 标签位置
     */
    private String position;

    /**
     * 标签距离
     * 默认值: 5
     */
    private Integer distance = 5;

    /**
     * 标签旋转角度
     */
    private Integer rotate;

    /**
     * 标签偏移量
     */
    private List<Integer> offset;

    /**
     * 标签内容格式化
     */
    private String formatter;

    /**
     * 文字颜色
     * 默认值: '#fff'
     */
    private String color = "#fff";

    /**
     * 字体样式
     * 默认值: 'normal'
     */
    private String fontStyle = "normal";

    /**
     * 字体粗细
     * 默认值: 'normal'
     */
    private String fontWeight = "normal";

    /**
     * 字体家族
     * 默认值: 'sans-serif'
     */
    private String fontFamily = "sans-serif";

    /**
     * 字体大小
     * 默认值: 12
     */
    private Integer fontSize = 12;

    /**
     * 文字对齐方式
     */
    private String align;

    /**
     * 文字垂直对齐方式
     */
    private String verticalAlign;

    /**
     * 行高
     */
    private Integer lineHeight;

    /**
     * 背景颜色
     * 默认值: 'transparent'
     */
    private String backgroundColor = "transparent";

    /**
     * 边框颜色
     */
    private String borderColor;

    /**
     * 边框宽度
     */
    private Integer borderWidth;

    /**
     * 边框类型
     * 默认值: 'solid'
     */
    private String borderType = "solid";

    /**
     * 虚线偏移量
     */
    private Integer borderDashOffset;

    /**
     * 圆角半径
     */
    private Integer borderRadius;

    /**
     * 内边距
     */
    private List<Integer> padding;

    /**
     * 阴影颜色
     * 默认值: 'transparent'
     */
    private String shadowColor = "transparent";

    /**
     * 阴影模糊度
     */
    private Integer shadowBlur;

    /**
     * 阴影水平偏移
     */
    private Integer shadowOffsetX;

    /**
     * 阴影垂直偏移
     */
    private Integer shadowOffsetY;

    /**
     * 文本宽度
     */
    private Integer width;

    /**
     * 文本高度
     */
    private Integer height;

    /**
     * 文字描边颜色
     */
    private String textBorderColor;

    /**
     * 文字描边宽度
     */
    private Integer textBorderWidth;

    /**
     * 文字描边类型
     * 默认值: 'solid'
     */
    private String textBorderType = "solid";

    /**
     * 文字描边虚线偏移
     */
    private Integer textBorderDashOffset;

    /**
     * 文字阴影颜色
     * 默认值: 'transparent'
     */
    private String textShadowColor = "transparent";

    /**
     * 文字阴影模糊度
     */
    private Integer textShadowBlur;

    /**
     * 文字阴影水平偏移
     */
    private Integer textShadowOffsetX;

    /**
     * 文字阴影垂直偏移
     */
    private Integer textShadowOffsetY;

    /**
     * 溢出处理方式
     * 默认值: 'none'
     */
    private String overflow = "none";

    /**
     * 截断后缀
     * 默认值: '...'
     */
    private String ellipsis = "...";

    /**
     * 富文本样式
     */
    private Object rich;
}
